package model

import "time"

//附件管理表
type Attachment struct {
	AttId    uint   `gorm:"primary_key;not null" json:"attId"`                        //主键
	UserId   uint   `gorm:"type:bigint;comment:图片上传者" json:"userId"`                  // 图片上传者
	RealName string `gorm:"type:varchar(255);not null;comment:原始文件名" json:"realName"` //原始文件名
	Name     string `gorm:"type:varchar(100);not null;comment:附件名称" json:"name"`      //附件名称
	AttDir   string `gorm:"type:varchar(200);not null;comment:附件路径" json:"attDir"`    //附件路径
	//SAttDir   string    `gorm:"type:varchar(200);comment:压缩图片路径" json:"sAttDir"`                                          //压缩图片路径
	AttSize     string `gorm:"type:char(30);not null;comment:附件大小" json:"attSize"`                                     //附件大小
	AttType     string `gorm:"type:char(30);not null;comment:附件类型" json:"attType"`                                     //附件类型
	ContentType string `gorm:"type:char(30);not null;comment:http内容类型" json:"contentType"`                             //http内容类型
	Pid         uint   `gorm:"not null;comment:分类ID 0编辑器,1商品图片,2拼团图片,3砍价图片,4秒杀图片,5文章图片,6组合数据图,7前台用户,8微信系列" json:"pid"` //分类ID 0编辑器,1商品图片,2拼团图片,3砍价图片,4秒杀图片,5文章图片,6组合数据图,7前台用户,8微信系列
	ImageType   int    `gorm:"not null;comment:图片上传类型 1本地 2七牛云 3OSS 4COS" json:"imageType"`                            //图片上传类型 1本地 2七牛云 3OSS 4COS
	Key         string `gorm:"type:VARCHAR(60)" json:"key"`                                                            // 对象存储key
	Hash        string `gorm:"type:VARCHAR(60);comment:哈希值" json:"hash"`                                               // 哈希值
	Bucket      string `gorm:"type:VARCHAR(60)" json:"bucket"`                                                         // 空间

	// todo 图片素材 状态字段 后期废弃
	Status    int       `gorm:"type:tinyint;default:1;comment:状态 3 正常, 2 过期, 1 用户上传附件24小时内都没使用该附件，该附件变为过期" json:"status"` // 状态 3 正常, 2 过期, 1 用户上传附件24小时内都没使用该附件，该附件变为过期
	CreatedAt time.Time `gorm:"comment:创建时间" json:"createdAt"`                                                            //创建时间
	UpdatedAt time.Time `gorm:"comment:更新时间" json:"updatedAt"`                                                            //更新时间
}
